4.4.7.4 Estrusione Conica ed Affusolamento.
Fig. 34-Creare una piramide Usando l'Estrusione Conica
La colorazione gradient
è stata scelta per definire meglio il nostro oggetto senza dover
mettere a posto subito luci e macchina fotografica, ma quando lo renderizziamo,
cosa abbiamo ottenuto ? Una piramide a strisce orizzontali !
Per ora possiamo riconoscere la spline lineare che unisce i quattro vertici
di un quadrato ed il famoso punto finale che serve per chiudere la curva.
Nota tutte le trasformazioni nella frase di dichiarazione dell'oggetto.
Queste necessitano di una piccola spiegazione. La parte riguardante rotate
e translate
è semplice. Normalmente un oggetto conico parte nel pieno delle
sue dimensioni in cima e si restringe fino ad un punto per y=0, ma naturalmente
otterremmo un oggetto capovolto, se vogliamo fare una piramide. Allora
la capovolgiamo attorno all'asse delle x per metterla dritta e, dato che
in effetti abbiamo ruotato la piramide intorno
all'asse x, la trasliamo in modo di metterla nella stessa posizione in
cui era quando abbiamo iniziato.
La parte relativa al comando scale
serve per proporzionare il tutto in modo che si adatti a questo esempio.
La base è un quadrato di lato 8, ma l'altezza è di solo un'unità
e quindi l'abbiamo ristretta un poco nel senso della larghezza. A questo
punto pensiamo : "perché non traslare il quadrato di partenza
da y=0 a Y=4 per evitare tutto questo lavoro ?" Ecco un punto
importante ! Per vedere perché non funzionerebbe, proviamo
a metterlo in pratica (vedi file prismdm6.pov). Assicuriamoci di
rimuovere la frase scale
e poi sostituiamo la linea
1, //quota 2
con
4, //quota 2
che regola la seconda quota a 4, poi
renderizziamo di nuovo e vediamo se l'effetto è lo stesso.
Fig. 35-La stessa piramide con l'altezza modificata
Ehi ! L'altezza è corretta,
ma la base della nostra piramide è immensa ! Cosa abbiamo sbagliato ?
Semplice. La base, per come l'abbiamo descritta con i punti che abbiamo
usato, si trova a y=1 indipendentemente dal valore della seconda quota.
Ma se impostiamo la seconda quota ad un valore maggiore di 1, dopo che
la piramide ha superato y=1, continua ad allargarsi uniformemente. Per
evitare di perdere il controllo di un prisma conico, è sempre meglio
impostare la seconda altezza ad 1 e usare un'istruzione scale
per dimensionare l'altezza. In questo modo possiamo essere sempre sicuri
che gli angoli della base restino dove vogliamo.
Questo conduce ad un'altra cosa interessante sulle estrusioni coniche.
Cosa facciamo se per un qualche motivo non vogliamo che l'estrusione avvenga
fino in cima ? Cosa facciamo se vogliamo ottenere, invece di una piramide,
qualcosa che assomigli di più ad uno ziggurat ? Facile. Dopo
avere rimesso ad uno la seconda quota ed avere rimesso a posto la frase
scale,
cambiamo la linea
0, //quota 1
in
2 //quota 1
Fig. 36-Dopo aver aumentato la prima altezza
Quando renderizziamo di nuovo, vediamo che l'estrusione si ferma prima di finire in un punto, dandoci una piramide tronca. Quanto esattamente sia tronca dipende da quanto sono vicini i valori della prima e della seconda quota.